home *** CD-ROM | disk | FTP | other *** search
/ Merciful 5 / Merciful - Disc 5.iso / software / h / hypertextdatav40.12cr.lha / HTDS / ARexx / HyperGuide2HTML.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1997-04-01  |  2.5 KB  |  123 lines

  1. /*
  2. ** $PROJECT: HyperText-DataType-System
  3. **
  4. ** $VER: HyperGuide2HTML.rexx 40.1 (05.01.97)
  5. **
  6. ** $AUTHOR: Stefan Ruppert , Windthorststrasse 5 , 65439 Floersheim , GERMANY
  7. **
  8. ** $COPYRIGHT: (C) Copyright 1997 by Stefan Ruppert, All Rights Reserved!
  9. **
  10. ** $EMAIL: Stefan.Ruppert@informatik.fh-wiesbaden.de
  11. **
  12. ** $HISTORY:
  13. **
  14. ** 05.01.97 : 040.001 : initial
  15. **
  16. */
  17.  
  18. Options Results
  19.  
  20. Parse Arg args
  21.  
  22. /* --------------------------- needed libraries --------------------------- */
  23.  
  24. Call AddLib('rexxsupport.library',0,-30,0)
  25. Call AddLib('rexxdossupport.library',0,-30,0)
  26.  
  27. Parse Arg args
  28.  
  29. rxport        = ''
  30. stem.dest     = ''
  31. stem.verbose  = 1
  32. stem.debug    = 0
  33.  
  34. template = 'DEST/A,VERBOSE/S,DEBUG/S'
  35.  
  36. If ReadArgs(args,template,'STEM.') Then Do
  37.  
  38.    rxport = 'MULTIVIEW.1.1'
  39.  
  40.    ADDRESS VALUE rxport
  41.  
  42.    'GETATTR OBJECT=OBJECT FIELD=NODENAME VAR=MAIN'
  43.  
  44.    If Upper(main) ~= 'MAIN' Then Do
  45.       Say 'This script must be invoked on the main node'
  46.       Exit 10
  47.    End
  48.  
  49.    'GETATTR OBJECT=OBJECT FIELD=PATH VAR=PATH'
  50.  
  51.    filename = FilePart(path)
  52.    p = Pos('.hguide',filename)
  53.    If p > 0 Then
  54.       filename = Left(filename,p - 1)
  55.    Else Do
  56.       p = Pos('.guide',filename)
  57.       If p > 0 Then
  58.      filename = Left(filename,p - 1)
  59.    End
  60.  
  61.    filename = ToLower(filename)
  62.    basename = filename
  63.    subdir   = AddPart(stem.dest,basename)
  64.    filename = Translate(filename,'__',' "') || '.html'
  65.  
  66.    file = ToLower(AddPart(stem.dest,filename))
  67.    if stem.verbose Then
  68.       Say 'Converting main node to : ' || file
  69.    'EXPORT TYPE=HTML FILE="' || file || '" ARGS=LOWER'
  70.  
  71.    done = 0
  72.    do until done
  73.       'NEXTINTERNAL'
  74.       If RC=0 Then Do
  75.      If ~Exists(subdir) Then
  76.         Call MakeDir(subdir)
  77.  
  78.      If ~Exists(subdir) Then Do
  79.         Say 'Cannot create sub directory : ' || subdir
  80.         Exit 10
  81.      End
  82.  
  83.      status = ''
  84.      Do until status = 'OK'
  85.         'GETATTR OBJECT=OBJECT FIELD=STATUS VAR=STATUS'
  86.         If stem.debug Then
  87.            Say status
  88.         Call Delay(5)
  89.      End
  90.  
  91.      'GETATTR OBJECT=OBJECT FIELD=NODENAME VAR=NODE'
  92.      nodefile = node
  93.      p = Pos('.',nodefile)
  94.      If p > 0 Then
  95.         nodefile = Left(nodefile,p - 1)
  96.      nodefile = nodefile || '.html'
  97.  
  98.      file = ToLower(AddPart(subdir,nodefile))
  99.  
  100.      if stem.verbose Then
  101.         Say 'Converting node="' || node || '" to : ' || file
  102.  
  103.      'EXPORT TYPE=HTML FILE="' || file || '" ARGS=LOWER'
  104.       End
  105.       Else
  106.      done = 1
  107.    End
  108. End
  109. Else Do
  110.    /*
  111.    ioerr = GetVar(process,'local')
  112.    Say ioerr
  113.    Say Fault(116,'HyperGuide2HTML')
  114.    */
  115.    Say 'Template : ' || template
  116. End
  117. Exit
  118.  
  119. ToLower:
  120.  
  121.    return Translate(Arg(1),'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')
  122.  
  123.